#Region "Imports Directive"

Imports System

#End Region

Namespace C4F.DevKit.Bluetooth

    Namespace FileTransferProfile

        ''' <summary>
        ''' EventArgs class to be used when an GetFolderListing operation 
        ''' completes.
        ''' </summary>
        Public Class GetFolderListingCompletedEventArgs
            Inherits ComponentModel.AsyncCompletedEventArgs

#Region "Private Members"

            ''' <summary>
            ''' The Location of the remote folder.
            ''' </summary>
            Private remFolderPath As String

            ''' <summary>        
            ''' XmlDocument containing the folder listing of the remote folder.
            ''' </summary>
            Private m_folderListingDocument As Xml.XmlDocument

#End Region

#Region "Public Properties"

            ''' <summary>
            ''' Gets the location of the  remote folder .
            ''' </summary>
            Public ReadOnly Property RemoteFolderPath() As String

                Get
                    Return Me.remFolderPath
                End Get

            End Property

            ''' <summary>
            ''' XmlDocument containing the folder listing of the remote folder.
            ''' </summary>
            Public ReadOnly Property FolderListingDocument() As Xml.XmlDocument

                Get
                    Return Me.m_folderListingDocument
                End Get

            End Property


#End Region

#Region "Constructor"

            ''' <summary>
            ''' Initializes the GetFolderListingCompletedEventArgs object.
            ''' </summary>
            ''' <param name="remoteFolderPath">The Location of the folder 
            ''' whose folder listing has to be pulled from remote device.
            ''' </param>
            ''' <param name="folderListingDocument">XmlDocument containing
            ''' the folder listing of the remote folder.</param>        
            ''' <param name="error">An error that occurred during the 
            ''' asynchronous operation.</param>
            ''' <param name="cancelled">A value indicating whether the 
            ''' asynchronous operation was cancelled.</param>
            ''' <param name="userState">The user-supplied state object
            ''' supplied when the asynchronous operation was requested.
            ''' </param>


            Public Sub New(ByVal remoteFolderPath As String, _
                            ByVal folderListingDocument As Xml.XmlDocument, _
                            ByVal [error] As Exception, ByVal cancelled As Boolean, _
                            ByVal userState As Object)

                MyBase.New([error], cancelled, userState)
                Me.remFolderPath = remoteFolderPath
                Me.m_folderListingDocument = folderListingDocument

            End Sub

#End Region

        End Class

    End Namespace

End Namespace
